1. Field of the Invention
The present invention relates to a method of resetting a bus for a network, and more particularly, to a method of resetting a bus for a network connected by the IEEE 1394 bus.
2. Description of the Related Art
The IEEE 1394 for digital network interfaces is being standardized. The IEEE 1394 bus has a digital bus protocol for connecting personal computers (PC) and digital electric home equipment to each other. The IEEE 1394 bus protocol is widely applied to equipment such as digital video cameras, hard disc drives, printers, and PCS. Also, the IEEE 1394 bus protocol is being extended from a bus protocol for simply connecting peripheral equipment to a computer, to a network protocol for performing data transmission among various systems such as PCS.
FIGS. 1A and 1B show an example of a network including IEEE 1394 equipment.
Referring to FIG. 1A, a plurality of apparatuses 100 through 108 which satisfy the IEEE 1394 standard are connected to the IEEE 1394 bus by 1394 cable. Here, the 1394 cable should not have loops. Namely, there should be only one 1394 cable path for connecting one apparatus to another. The respective apparatuses have ports (port0 through port2) to which the 1394 cable is connected, as shown in FIG. 1B. IEEE 1394 node IDs are designated to the respective apparatuses. The node IDs are used as the addresses of apparatuses when an apparatus transmits data to, and receives data from, another apparatus. The node IDs are re-assigned whenever the bus is reset.
FIG. 2 schematically shows a protocol stack used by the IEEE 1394 equipment. The protocol stack shown in FIG. 2 is necessary in order to operate the IEEE 1394 bus. Here, a physical layer 200 and a link layer 202 are realized as hardware, i.e., as an integrated circuit (IC) chip. A transaction layer 204 and a node manager 206 are realized as software.
The state of the network connected by the IEEE 1394 bus changes from a normal bus operation state to a bus reset state when a new device is connected to the network through an arbitrary port, or when a previously connected apparatus is removed therefrom. Such a state change is sensed by the physical layer chip shown in FIG. 2. When the state change is sensed, a bus re-alignment process having the following sequence is performed.
In a bus reset state, a tree identification step is performed. In this step, it is sensed whether loops are formed in the connected state of a bus, and a root node for forming a tree is determined. Then, a self-identification step is performed. In this step, each node determines the IEEE 1394 node ID thereof and broadcasts this to other nodes. Then, an isochronous manager determining step is performed to determine a node for managing isochronous resources. Finally, a manager determining step is performed to determine a node for managing bus configuration information. By doing so, the bus reset state is restored to a normal bus operation state. Accordingly, data can be exchanged among nodes.
In such a bus reset process, data cannot be exchanged since the bus is not in the normal operation state. The bus is temporarily in the re-alignment state due to the bus reset generated either when a new apparatus is connected to the bus, or when a connected apparatus is separated from the bus in the network connected by the IEEE 1394 bus. During this time, video or audio data streams are interrupted. It takes about one second to reset the bus during which time a user experiences visual or aural interruption.
To solve the above problem, it is an objective of the present invention to provide a method of resetting a bus for the IEEE 1394 network by which it is possible to maintain normal data transmission and prevent data interruption, by performing a bus reset for the nodes of directly related ports in the bus without resetting all the nodes connected to the bus during such a bus reset.
Accordingly, to achieve the above objective, there is provided a bus reset method in a network in which a plurality of apparatuses are connected by the IEEE 1394 bus, comprising the steps of (a) sensing the state change of a port, (b) confirming whether loops exist in the bus when it is sensed in step (a) that a new apparatus is connected to an apparatus of the network, (c) transmitting the bus configuration information of a slave node from the slave node to a master node when it is confirmed that loops do not exist in the step (b), (d) re-configuring the bus of the network from the transmitted bus configuration information and the existing bus configuration information of the master node, and (e) broadcasting the re-configured bus configuration information to all apparatuses connected to the network.
The step (b) preferably comprises the steps of (b1) transmitting an extended unique ID (EUID) showing the configuration state of an apparatus from one node to the other between the two nodes related to the connection, and designating the node which transmits the EUID as a slave node and the node which receives the EUID as a master node, (b2) comparing the transmitted EUID with the EUID of each node of the existing bus configuration information included in the master node, and (b3) stopping the bus reset if it is determined from the comparison result in step (b2) that identical EUIDs exist and otherwise proceeding to the next stop.
The step (d) preferably comprises the steps of (d1) comparing the bus configuration information transmitted in the step (c) with the existent bus configuration information of the master node and (d2) determining node IDs based on the comparison result so that each node has a unique node ID in the bus.
The step (d) preferably comprises the step of re-configuring the bus of the network by extracting the information of the separated bus from the bus configuration information included in the port in the unconnected state when the result obtained in the step (b) corresponds to a case where an apparatus connected to the network is removed.
Preferably, the step of re-trying the step (b) after a predetermined time interval when it is confirmed that loops exist in the step (b) is further comprised.